/**
 * 第5章 使用流
 * 代码清单-p1ch05a-87页a：用谓词筛选 {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-87页b：筛选各异的元素 {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-89页a：使用学习过的filter操作 {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-89页b：使用takeWhile {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-89页c：使用dropWhile {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-90页a：截短流 {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-90页b：跳过元素 {@link top.kaoshanji.p1ch05a.Filtering}
 * 代码清单-p1ch05a-91页a：对流中每一个元素应用函数 {@link top.kaoshanji.p1ch05a.Mapping}
 * 代码清单-p1ch05a-93页a：使用flatMap {@link top.kaoshanji.p1ch05a.Mapping}
 * 代码清单-p1ch05a-95页a：检查谓词是否至少匹配一个元素 {@link top.kaoshanji.p1ch05a.Finding}
 * 代码清单-p1ch05a-96页a：检查谓词是否匹配所有元素 {@link top.kaoshanji.p1ch05a.Finding}
 * 代码清单-p1ch05a-96页b：查找元素 {@link top.kaoshanji.p1ch05a.Finding}
 * 代码清单-p1ch05a-97页a：查找第一个元素 {@link top.kaoshanji.p1ch05a.Finding}
 * 代码清单-p1ch05a-98页a：元素求和 {@link top.kaoshanji.p1ch05a.Reducing}
 * 代码清单-p1ch05a-100页a：最大值和最小值 {@link top.kaoshanji.p1ch05a.Reducing}
 * author kaoshanji
 * ^_^
 * create time 2025/2/11 9:41
 */
package top.kaoshanji.p1ch05a;